Helm 차트 관리 - nginx 버전 업그레이드

Helm은 Kubernetes 애플리케이션의 패키징, 배포, 관리를 위한 패키지 관리자입니다. 복잡한 애플리케이션을 쉽게 정의하고 설치하며 업그레이드할 수 있게 해줍니다. Helm은 "Kubernetes의 apt/yum/homebrew"라고 볼 수 있습니다.

Helm의 주요 이점

핵심 개념

자주 사용하는 명령어

# 저장소 추가
helm repo add bitnami https://charts.bitnami.com/bitnami

# 저장소 정보 업데이트
helm repo update

# 릴리스 목록 확인
helm list -n <namespace>

# 차트 설치
helm install <release-name> <chart-name> -n <namespace>

# 릴리스 업그레이드
helm upgrade <release-name> <chart-name> --version <version> -n <namespace>

nginx 버전 업그레이드 실습

  1. 현재 설치된 nginx 확인
$ helm list -n kk-ns
NAME       NAMESPACE  REVISION  UPDATED                                STATUS    CHART         APP VERSION
kk-mock1   kk-ns      1         2025-03-10 15:20:33.472829 +0900 KST  deployed  nginx-18.1.14 1.25.3
  1. 사용 가능한 nginx 차트 버전 확인
$ helm search repo nginx --versions
NAME            VERSION   APP VERSION  DESCRIPTION
bitnami/nginx   18.1.15   1.25.4       NGINX Open Source is a web server...
bitnami/nginx   18.1.14   1.25.3       NGINX Open Source is a web server...
...
  1. nginx 차트 업그레이드
$ helm upgrade kk-mock1 nginx --version 18.1.15 -n kk-ns
Release "kk-mock1" has been upgraded. Happy Helming!
NAME: kk-mock1
LAST DEPLOYED: Tue Mar 11 10:25:42 2025
NAMESPACE: kk-ns
STATUS: deployed
REVISION: 2
...
  1. 업그레이드 확인
$ helm ls -n kk-ns
NAME       NAMESPACE  REVISION  UPDATED                                STATUS    CHART         APP VERSION
kk-mock1   kk-ns      2         2025-03-11 10:25:42.683921 +0900 KST  deployed  nginx-18.1.15 1.25.4

자주 사용하는 파라미터